package ua.lviv.franko.solvers.stressanalysis.oneDimention;

import ua.lviv.franko.integration.IFunction1D;
import ua.lviv.franko.integration.IFunction2D;

public class EquationParameters {
	// parameters of coordinate system
	private IFunction1D	A1;
	private IFunction1D	k1;
	// equation parameters
	private double		E;
	private double		v;
	private double		h;
	private double		kPrime;
	private double		G;

	private IFunction2D	f1;
	private IFunction2D	f3;

	// input data from "big model-problem"
	private IFunction1D	sigma13Plus;
	private IFunction1D	sigma13Minus;

	private IFunction1D	sigma11Plus;
	private IFunction1D	sigma11Minus;

	private IFunction1D	sigma33Plus;
	private IFunction1D	sigma33Minus;

	public EquationParameters() {
		kPrime = 5.0 / 6.0;
		G = E / (2 + 2 * v);
	}

	public EquationParameters(IFunction1D a1, IFunction1D k1, double e, double v, double h, IFunction2D f1, IFunction2D f3, IFunction1D sigma13Plus, IFunction1D sigma13Minus,
			IFunction1D sigma11Plus, IFunction1D sigma11Minus, IFunction1D sigma33Plus, IFunction1D sigma33Minus) {
		super();
		A1 = a1;
		this.k1 = k1;
		E = e;
		this.v = v;
		this.h = h;
		kPrime = 5.0 / 6.0;
		G = E / (2 + 2 * v);
		this.f1 = f1;
		this.f3 = f3;
		this.sigma13Plus = sigma13Plus;
		this.sigma13Minus = sigma13Minus;
		this.sigma11Plus = sigma11Plus;
		this.sigma11Minus = sigma11Minus;
		this.sigma33Plus = sigma33Plus;
		this.sigma33Minus = sigma33Minus;
	}

	public IFunction1D getA1() {
		return A1;
	}

	public double getE() {
		return E;
	}

	public IFunction2D getF1() {
		return f1;
	}

	public IFunction2D getF3() {
		return f3;
	}

	public double getG() {
		return G;
	}

	public double getH() {
		return h;
	}

	public IFunction1D getK1() {
		return k1;
	}

	public double getkPrime() {
		return kPrime;
	}

	public IFunction1D getSigma11Minus() {
		return sigma11Minus;
	}

	public IFunction1D getSigma11Plus() {
		return sigma11Plus;
	}

	public IFunction1D getSigma13Minus() {
		return sigma13Minus;
	}

	public IFunction1D getSigma13Plus() {
		return sigma13Plus;
	}

	public IFunction1D getSigma33Minus() {
		return sigma33Minus;
	}

	public IFunction1D getSigma33Plus() {
		return sigma33Plus;
	}

	public double getV() {
		return v;
	}

	public void setA1(IFunction1D a1) {
		A1 = a1;
	}

	public void setE(double e) {
		E = e;
	}

	public void setF1(IFunction2D f1) {
		this.f1 = f1;
	}

	public void setF3(IFunction2D f3) {
		this.f3 = f3;
	}

	public void setG(double g) {
		G = g;
	}

	public void setH(double h) {
		this.h = h;
	}

	public void setK1(IFunction1D k1) {
		this.k1 = k1;
	}

	public void setkPrime(double kPrime) {
		this.kPrime = kPrime;
	}

	public void setSigma11Minus(IFunction1D sigma11Minus) {
		this.sigma11Minus = sigma11Minus;
	}

	public void setSigma11Plus(IFunction1D sigma11Plus) {
		this.sigma11Plus = sigma11Plus;
	}

	public void setSigma13Minus(IFunction1D sigma13Minus) {
		this.sigma13Minus = sigma13Minus;
	}

	public void setSigma13Plus(IFunction1D sigma13Plus) {
		this.sigma13Plus = sigma13Plus;
	}

	public void setSigma33Minus(IFunction1D sigma33Minus) {
		this.sigma33Minus = sigma33Minus;
	}

	public void setSigma33Plus(IFunction1D sigma33Plus) {
		this.sigma33Plus = sigma33Plus;
	}

	public void setV(double v) {
		this.v = v;
	}

}
